
#ifndef __LINK_TCPCLIENT_H__
#define __LINK_TCPCLIENT_H__
#include "TcpClient.h"
#include "base/LinkBase.h"
#include <map>

/*
    连接接口实现类： Tcp 连接
    
*/

namespace controller
{
    class LinkTcpClient : public LinkBase, public hv::TcpClient
    {
    private:
        /* data */
        std::string _url;
        int _port;

    public:
        LinkTcpClient(/* args */);
        ~LinkTcpClient();

        // 读写接口
        bool open(std::map<std::string, std::string>) override;          // 打开
        bool close() override;                                           // 关闭
        int write(char *data, int len, const char *arg = NULL) override; // 写
        // int read(char *dataout, int len) override;//读

        // 状态
        bool is_open() override;     // 设备是否打开
        std::string name() override; // 设备名称
        std::string info() override; // 设备信息
    };
};

#endif // ! __LINK_TCPCLIENT_H__
